package com.lvmama.rhino.mapperHippo;

import com.lvmama.rhino.entity.MessageStatisticalVO;
import com.lvmama.rhino.entity.MessageVO;
import com.lvmama.rhino.pojo.Message;
import com.lvmama.rhino.pojo.MessageStatistical;

import java.util.List;

public interface MessageMapper {

    /**
     * 根据条件查询消息回执的信息
     *
     * @param messageVO
     * @return
     */
    List<Message> getMessageListPage(MessageVO messageVO);

    /**
     * 查询时段中各类别下的消息回执的数量
     *
     * @param i 当前日期向前移动天数
     * @param j 当前日期向前移动天数
     * @return
     */
    List<Message> selectDateCategoryCount(int i, int j);

    /**
     * 根据条件查询推送消息的推送量，送达量和点击量
     *
     * @param messageStatisticalVO
     * @return
     */
    List<MessageStatistical> getMessageStatisticalList(MessageStatisticalVO messageStatisticalVO);

    /**
     * 查询推送类别为普通推送以外的全部数据
     *
     * @param messageStatisticalVO
     * @return
     */
    List<MessageStatistical> exportAllStatistical(MessageStatisticalVO messageStatisticalVO);


    /**
     * 根据条件查询CMS活动推送消息的推送量，送达量和点击量
     *
     * @param messageStatisticalVO
     * @return
     */
    List<MessageStatistical> exportActivityStatistical(MessageStatisticalVO messageStatisticalVO);


    /**
     * 根据条件查询CMS活动推送消息的推送量，送达量和点击量
     *
     * @param messageStatisticalVO
     * @return
     */
    List<MessageStatistical> getActivityMessageStatisticalList(MessageStatisticalVO messageStatisticalVO);


}
